package com.mes.cloud.service;

import com.mes.cloud.common.CommPager;
import com.mes.cloud.dto.QuartzTaskDTO;

import java.util.List;
import java.util.Map;

/**
* 定时任务
* @author wxm
* @Time 2019-6-10
*/
public interface QuartzTaskService {
    /**
    * 根据条件获取定时任务列表
    * @param condition
    * @return
    * @throws Exception
    */
    public List<QuartzTaskDTO> getQuartzTaskList(Map<Object, Object> condition);

    /**
     * 获取所有定时任务列表
     * @return
     * @throws Exception
     */
    public List<QuartzTaskDTO> getQuartzTaskListAll();

    /**
    * 获取定时任务的最大记录数
    * @param condition
    * @return
    * @throws Exception
    */
    public long getQuartzTaskCount(Map<Object, Object> condition);

    /**
    * 新增定时任务
    * @param quartzTaskDTO 定时任务对象
    * @return
    */
    public long insertQuartzTask(QuartzTaskDTO quartzTaskDTO);

    /**
    * 更新定时任务
    * @param quartzTaskDTO 定时任务对象
    * @return
    */
    public long updateQuartzTask(QuartzTaskDTO quartzTaskDTO);

    public long updateQuartzTaskState(Integer id, Integer state);

    /**
    * 删除定时任务
    * @param id  定时任务标识
    * @return
    */
    public long delQuartzTaskById(Integer id);

    /**
    * 根据定时任务标识获取定时任务
    * @param id  定时任务标识
    * @return
    */
    public QuartzTaskDTO getQuartzTaskById(Integer id);

    CommPager<QuartzTaskDTO> findPageList(Map<Object, Object> map);
}
